package com.yxw.live_vod_boot.service;

import com.yxw.live_vod_boot.dto.SendInteractMsgDto;
import com.yxw.live_vod_boot.dto.SendNormalMsgDto;
import com.yxw.live_vod_boot.dto.SysNoticeQueryDTO;
import com.yxw.live_vod_boot.dto.ReviewExamineDTO;
import com.yxw.live_vod_boot.entity.YxUploadSourceMaterialReviewEntity;
import com.yxw.live_vod_facade.dto.VideoReviewHandelDTO;
import com.yxw.live_vod_boot.entity.YxUploadVideoReviewEntity;
import com.yxw.live_vod_boot.vo.SysNoticeInfoVo;
import com.yxw.yxnet_cd_center.common.dto.PageVO;
import com.yxw.yxnet_cd_center.common.utils.BaseResult;

import java.util.concurrent.Future;

/**
 * 系统消息通知管理
 * @author liuxin
 * @date 2023.11.21
 */
public interface SysNoticeService {


    /**
     * 发送审核系统消息
     * @param msgDto
     */
    Future<BaseResult> sendNotice(SendInteractMsgDto msgDto);


    PageVO<SysNoticeInfoVo> getNoticesByUserId(SysNoticeQueryDTO dto);

    /**
     * 消息变更为已读
     * @param noticeId
     */
    void updateNoticeStatus(Long noticeId);

    /**
     * 发送互动消息/新朋友消息（普通消息）
     * @param msgDto
     */
    void sendNormalNotice(SendNormalMsgDto msgDto);

}
